'''

TODO 百度了文心一言，何为__name__？下面是文心一言给出的答案：

    1、__name__代表的是模块的名称，当一个模块被直接运行时，__name__的值会被设置为"__main__"
    2、当模块被导入到其他模块中时，__name__的值则会被设置为该模块的名称
    3、这种机制使得开发者可以通过判断__name__的值来决定模块中的代码是在直接运行时执行还是在被导入时执行。例如，可以通过以下方式在模块中编写一个只在直接运行时执行的main函数：
    4、__main__是Python中内置变量，代表的是 当前正在执行的模块的名称 ，所以__name__表示的是，如果启动入口是当前类，那么可以调用当前函数中的main函数进行运行；

很多python的文件中会有语句if __name=='__main__':，一直不太明白。查阅了一些资料，现在明白，记录一下。
一句话解释就是，这个语句的意思是当__name__是 '__main__'时执行下面的语句。这里__name__表示当前文件的名字，是文件的内置变量。
当执行当前文件（const.py）时，运行print (__name__)会得到结果__main__。所以如果直接执行当前文件，那么这个语句后的代码块将被执行。
但是有的时候我们会从另一个python文件调用这个文件（test.py），这时候print (__name__)会得到结果test,那么__name=='__main__'就是False，if语句后面的代码块就不会被执行。
总结来说就是if __name=='__main__':保证了后面的语句只有作为当前文件时被执行，而作为导入文件时不被执行。这个语句后面的代码一般是作为测试代码使用，这保证了当文件被调用时，测试代码不会被执行。

TODO 但是这里绝对不会出现和java一样的情况，java中多个类中，每个类中都可以写到main函数，但是python中却不可以
     在java我们写main函数，来做一个测试；但是在Python中我们需要来写另外的语句来进行书写

'''

PI = 3.14

def main():
    print("打印一下运行模块的名称"+__name__)
    print("PI:", PI)


# main()

# 运行结果：PI: 3.14

if __name__ == "__main__":
    main()
    print("打印一下，当前的文件是由于哪个py文件引入的：" + __name__)
else:
    # 如果被另外一个py文件引入的话，那么将会形成怎样的条件呢？
    print("打印一下，当前的文件是由于哪个py文件引入的："+__name__)
